import React from "react"

/**
 * 短信回话唯一标识
 */
export interface IUuid {
  uuid?: React.Key
}
export interface IUuidRequired {
  uuid: React.Key
}
/**
 * 登录的参数
 */
export interface ILoginParams extends IUuid {
  username: string
  password: string
  type: number//1：密码登录，2：验证码登录
  client_type: string
  version: string
  tenant_id: string
}
/**
 * 用户信息
 */
export interface IUserModel {
  token: string
  name: string
  user_id: string
  user_nickname: string
  user_avatar: string
  avatar_id: React.Key
  user_type: number//用户类型（-1后台管理员，0普通人员，1平台超级管理员）
  is_force_edit_password: number//是否强制修改密码（0不是，1是）
  department_name: string
  department_id: string
  tenant_id: string
  /**
   * 租户/公司名称
   */
  tenant_name: string
  /**
   * 租户/公司logo
   */
  tenant_logo: string
  mqtt_client_id: string
  /**
   * 系统名称
   */
  system_name: string
  mqtt_host: string
  yjs_url: string
  onlyoffice_host: string
}
/**
 * 获取配置的参数
 */
export interface IConfigParams {
  tenant_id: React.Key//租户id
}
/**
 * 配置信息
 */
export interface IConfigModel {
  login_title: string
  login_logo: string
  login_slogn: string
  login_title_phone: string
  login_logo_phone: string
  login_slogn_phone: string
}
/**
 * 获取验证码的参数
 */
export interface IVerificationCodeParams {
  phone_number: string
  type: number//（0：登录验证码，1：重置密码验证码）
}
/**
 * 获取验证码返回的数据
 */
export interface IVerificationCodeData extends IUuidRequired {

}
/**
 * 修改密码的参数
 */
export interface IEditPasswordParams {
  new_password: string
  confirm_password: string
  old_password: string
}
/**
 * 重置密码的参数
 */
export interface IResetPasswordParams extends IUuidRequired {
  phone_number: string
  verification_code: string
  password: string
  confirm_password: string
  token: string
  tenant_id: string
}
/**
 * 加密信息
 */
export interface ISecretKeyModel {
  public_key: string
}
/**
 * 头像信息
 */
export interface IAvatarInfo {
  id: React.Key
  src: string
}
/**
 * 头像列表返回的数据
 */
export interface IAvatarListModel {
  avatar_list: IAvatarInfo[]
}
/**
 * 修改个人信息的参数
 */
export interface IEditPersonalParams {
  user_nickname: string
  avatar_id: React.Key
}
/**
 * 获取是否需要密码强度校验数据
 */
export interface IPasswordVerifyModel {
  is_password_verify: string
  placeholder: string
}